twilio sms automation

安装量: 158
排名: #5476

安装

npx skills add https://github.com/claude-office-skills/skills --skill 'Twilio SMS Automation'

Twilio SMS Automation Comprehensive skill for automating SMS, voice, and verification workflows with Twilio. Core Workflows 1. SMS Messaging Flow SMS AUTOMATION FLOW: ┌─────────────────┐ │ Trigger │ │ (Event/API) │ └────────┬────────┘ ▼ ┌─────────────────┐ │ Message Build │ │ - Template │ │ - Personalize │ └────────┬────────┘ ▼ ┌─────────────────┐ │ Number Lookup │ │ - Validate │ │ - Format │ └────────┬────────┘ ▼ ┌─────────────────┐ │ Send │ │ - Twilio API │ │ - Queue │ └────────┬────────┘ ▼ ┌─────────────────┐ │ Delivery │ │ - Status │ │ - Callback │ └─────────────────┘ 2. Message Configuration sms_config : sender : phone_number : "+1234567890" messaging_service_sid : "MG..."

For higher throughput

defaults : status_callback : "https://api.example.com/sms/status" validity_period : 14400

4 hours

rate_limiting : messages_per_second : 10 daily_limit_per_recipient : 5 compliance : opt_out_keywords : [ "STOP" , "UNSUBSCRIBE" , "CANCEL" ] opt_in_required : true quiet_hours : start : "21:00" end : "09:00" timezone : "America/New_York" Message Templates Notification Templates templates : order_confirmation : content : | {{company}}: Your order #{{order_id}} has been confirmed! Total: ${{total}} Track: {{tracking_url}} Reply HELP for assistance. max_length : 160 shipping_update : content : | {{company}}: Your order #{{order_id}} has shipped! Carrier: {{carrier}} Tracking: {{tracking_number}} Delivery: {{estimated_date}} appointment_reminder : content : | Reminder: Your appointment with {{provider}} is tomorrow at {{time}}. Location: {{address}} Reply C to confirm or R to reschedule. two_factor : content : | Your {{company}} verification code is: {{code}} This code expires in 10 minutes. Don't share this code with anyone. Conversational Templates two_way_messaging : welcome : trigger : opt_in response : | Welcome to {{company}} updates! You'll receive order and shipping notifications. Reply HELP for commands or STOP to unsubscribe. help : trigger : [ "HELP" , "?" , "INFO" ] response : | {{company}} SMS Commands: STATUS - Check order status TRACK - Get tracking info SUPPORT - Contact support STOP - Unsubscribe status_inquiry : trigger : [ "STATUS" , "ORDER" ] action : lookup_order response : | Order #{{order_id}}: {{status}} {{#if tracking}} Tracking: {{tracking_url}} {{/if}} unsubscribe : trigger : [ "STOP" , "UNSUBSCRIBE" ] action : opt_out response : | You've been unsubscribed from {{company}} messages. Reply START to resubscribe anytime. Verification (2FA) Verify API Integration verification_config : channel : sms

or: call, email, whatsapp

code_settings : length : 6 expiry_minutes : 10 rate_limits : max_attempts : 5 lockout_minutes : 30 templates : sms : "Your {{company}} code is {{code}}" call : "Your verification code is {{code_spoken}}" Verification Flow // Start Verification const verification = await twilio . verify . v2 . services ( 'VA...' ) . verifications . create ( { to : '+1234567890' , channel : 'sms' , customCode : '123456' , // Optional locale : 'en' } ) ; // Check Verification const check = await twilio . verify . v2 . services ( 'VA...' ) . verificationChecks . create ( { to : '+1234567890' , code : '123456' } ) ; // Result if ( check . status === 'approved' ) { // Verification successful } else { // Invalid code } Voice Automation Outbound Calls voice_config : outbound_call : from : "+1234567890" twiml_url : "https://api.example.com/voice/script" status_callback : "https://api.example.com/voice/status" timeout : 30 record : true twiml_script : |

Hello {{name}}, this is a reminder about your appointment tomorrow at {{time}}. Press 1 to confirm, 2 to reschedule. IVR Menu ivr_menu : greeting : | Thank you for calling {{company}}. For sales, press 1. For support, press 2. For billing, press 3. To speak with an operator, press 0. routing : - digit : "1" action : transfer destination : "+1987654321" queue : "sales" - digit : "2" action : transfer destination : "+1876543210" queue : "support" - digit : "3" action : transfer destination : "+1765432109" queue : "billing" - digit : "0" action : operator fallback : voicemail Bulk Messaging Campaign Configuration bulk_campaign : name : "Holiday Promotion" audience : source : segment filter : opted_in : true last_purchase : "> 30_days" message : template : holiday_promo variables : discount_code : "HOLIDAY20" schedule : start_time : "2024-11-25T10:00:00" timezone : "America/New_York" batch_size : 100 delay_between_batches : 60

seconds

tracking
:
delivery_report
:
true
click_tracking
:
true
conversion_tracking
:
true
Broadcast Status
CAMPAIGN STATUS: Holiday Promotion
═══════════════════════════════════════
Progress: ████████████████░░░░ 78%
DELIVERY STATS:
Sent: 7,800
Delivered: 7,450 (95.5%)
Failed: 125 (1.6%)
Pending: 225 (2.9%)
ENGAGEMENT:
Clicks: 1,245 (16.7%)
Replies: 89 (1.2%)
Opt-outs: 23 (0.3%)
ERRORS:
Invalid Number: 45
Unsubscribed: 52
Carrier Block: 18
Rate Limited: 10
ESTIMATED COMPLETION: 25 minutes
Phone Number Management
Number Lookup
number_lookup
:
capabilities
:
-
carrier_info
-
caller_name
-
line_type
validation
:
-
check_format
-
verify_active
-
detect_landline_vs_mobile
example_response
:
phone_number
:
"+14155551234"
country_code
:
"US"
carrier
:
name
:
"Verizon"
type
:
"mobile"
caller_name
:
"John Doe"
valid
:
true
Number Provisioning
number_management
:
search_criteria
:
country
:
"US"
area_code
:
"415"
capabilities
:
[
"SMS"
,
"MMS"
,
"Voice"
]
purchase
:
phone_number
:
"+14155559999"
friendly_name
:
"Marketing Line"
sms_url
:
"https://api.example.com/sms/incoming"
voice_url
:
"https://api.example.com/voice/incoming"
Analytics Dashboard
SMS ANALYTICS - LAST 30 DAYS
═══════════════════════════════════════
VOLUME:
Sent: 45,230
Delivered: 43,456 (96.1%)
Failed: 1,774 (3.9%)
BY TYPE:
Notifications ████████████░░░░ 62%
Marketing ██████░░░░░░░░░░ 23%
2FA ████░░░░░░░░░░░░ 15%
DELIVERY BY CARRIER:
Verizon ████████████████ 97%
AT&T ███████████████░ 95%
T-Mobile ██████████████░░ 94%
Sprint █████████████░░░ 92%
COST:
Total Spend: $1,245.67
Per Message: $0.0275
Per Delivered: $0.0287
ENGAGEMENT:
Link Clicks: 3,456 (7.9%)
Replies: 892 (2.1%)
Opt-outs: 56 (0.1%)
API Examples
Send SMS
// Simple SMS
const
message
=
await
twilio
.
messages
.
create
(
{
body
:
'Hello from Twilio!'
,
from
:
'+1234567890'
,
to
:
'+0987654321'
,
statusCallback
:
'https://api.example.com/sms/status'
}
)
;
// With Messaging Service (recommended for scale)
const
message
=
await
twilio
.
messages
.
create
(
{
body
:
'Order confirmed!'
,
messagingServiceSid
:
'MG...'
,
to
:
'+0987654321'
}
)
;
// MMS with Media
const
mms
=
await
twilio
.
messages
.
create
(
{
body
:
'Check out this image!'
,
from
:
'+1234567890'
,
to
:
'+0987654321'
,
mediaUrl
:
[
'https://example.com/image.jpg'
]
}
)
;
Handle Incoming SMS
// Express webhook handler
app
.
post
(
'/sms/incoming'
,
(
req
,
res
)
=>
{
const
{
From
,
Body
}
=
req
.
body
;
const
twiml
=
new
twilio
.
twiml
.
MessagingResponse
(
)
;
if
(
Body
.
toUpperCase
(
)
===
'STATUS'
)
{
twiml
.
message
(
'Your order is on the way!'
)
;
}
else
{
twiml
.
message
(
'Thanks for your message. We\'ll respond shortly.'
)
;
}
res
.
type
(
'text/xml'
)
;
res
.
send
(
twiml
.
toString
(
)
)
;
}
)
;
Best Practices
Get Consent
Always have opt-in before messaging
Include Opt-Out
STOP keyword in every message
Respect Quiet Hours
Don't message late night
Validate Numbers
Use Lookup API before sending
Handle Failures
Retry logic for transient errors
Monitor Delivery
Track delivery rates by carrier
Stay Compliant
Follow TCPA/CTIA guidelines
Use Templates
Consistent, tested messages
返回排行榜